
import { Injectable } from '@angular/core';
import { FormControl } from '@angular/forms';
import { Form, NgFormControl, NgChildForm, NgChildFormArray, NgValidateForm } from '@farris/devkit';
import { DateConverter, MultiLangConverter } from '@farris/kendo-binding';

@Injectable()
@NgValidateForm({
    formGroupName: '差旅中心',
    enableValidate: true
})

@Injectable()
export class BasicFormViewmodelForm extends Form {
    @NgFormControl({
        id: 'employeeID_c3c92d01_q8gd',
        name: "{{employeeID_c3c92d01_q8gd}}",
        binding: 'employeeID',
        updateOn: 'blur',
        defaultI18nValue: '报销人员',
        validRules: [
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    employeeID: FormControl;

    @NgFormControl({
        id: 'domainID_8365d083_k2iu',
        name: "{{domainID_8365d083_k2iu}}",
        binding: 'domainID',
        updateOn: 'blur',
        defaultI18nValue: '所属部门',
    })
    domainID: FormControl;

    @NgFormControl({
        id: 'billCode_f41a82f7_3ckc',
        name: "{{billCode_f41a82f7_3ckc}}",
        binding: 'billCode',
        updateOn: 'blur',
        defaultI18nValue: '单据编号',
        validRules: [
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    billCode: FormControl;

    @NgFormControl({
        id: 'billDate_e0f8c07b_okj5',
        name: "{{billDate_e0f8c07b_okj5}}",
        binding: 'billDate',
        updateOn: 'blur',
        valueConverter: new DateConverter('yyyy-MM-dd'),
        defaultI18nValue: '制单日期',
    })
    billDate: FormControl;

    @NgFormControl({
        id: 'projectID_0be62a6b_u10k',
        name: "{{projectID_0be62a6b_u10k}}",
        binding: 'projectID',
        updateOn: 'blur',
        defaultI18nValue: '所属项目',
    })
    projectID: FormControl;

    @NgFormControl({
        id: 'billNote_709ea430_q6so',
        name: "{{billNote_709ea430_q6so}}",
        binding: 'billNote',
        updateOn: 'blur',
        defaultI18nValue: '报销说明',
    })
    billNote: FormControl;

    @NgFormControl({
        id: 'projectMrg_28644dc9_tqfw',
        name: "{{projectMrg_28644dc9_tqfw}}",
        binding: 'projectMrg',
        updateOn: 'blur',
        defaultI18nValue: '项目经理',
    })
    projectMrg: FormControl;

    @NgFormControl({
        id: 'billDetailAmount_1d78a998_bzl4',
        name: "{{billDetailAmount_1d78a998_bzl4}}",
        binding: 'billDetailAmount',
        updateOn: 'blur',
        defaultI18nValue: '报销金额',
    })
    billDetailAmount: FormControl;

    @NgFormControl({
        id: 'xsdw_1176265c_d3q3',
        name: "{{xsdw_1176265c_d3q3}}",
        binding: 'xsdw',
        updateOn: 'blur',
        defaultI18nValue: '单位',
        validRules: [
            {
                type: 'matches',
                constraints: [''],
            }
        ]
    })
    xsdw: FormControl;

    @NgFormControl({
        id: 'state_c58a44f2_pfqo',
        name: "{{state_c58a44f2_pfqo}}",
        binding: 'state',
        updateOn: 'blur',
        defaultI18nValue: '状态',
    })
    state: FormControl;

    @NgFormControl({
        id: 'accontName_bc4aed19_eza4',
        name: "{{accontName_bc4aed19_eza4}}",
        binding: 'accontName',
        updateOn: 'blur',
        defaultI18nValue: '账户名称',
    })
    accontName: FormControl;

}